#include <bits/stdc++.h>
using namespace std;
int N, S;
const int maxn = 500000+10;
int d[maxn][2];
vector<int> G[maxn];

void dfs(int u, int fa){
    if(d[u][1]) return;
    d[u][0] = 0;
    d[u][1] = 1;
    for(auto v:G[u])if(v!=fa){
        dfs(v, u);
        d[u][1] += d[v][0];
        d[u][0] += max(d[v][0], d[v][1]);
    }
}
int main() {
    ios::sync_with_stdio(false);cin.tie(nullptr);cout.tie(nullptr);
    cin >> N >> S;
    for (int i = 0; i < N - 1; ++i) {
        int a, b; cin >> a >> b;
        G[a].push_back(b);
        G[b].push_back(a);
    }
    dfs(S, 1);
    cout << d[S][1];
    return 0;
}